home *** CD-ROM | disk | FTP | other *** search
- /*
- * ATMInterface.h
- *
- * Version 1.01
- *
- * Adobe Type Manager is a trademark
- * of Adobe Systems Incorporated.
- */
- /*
- HISTORY:
- 9/7/94 dgp cosmetic editing. Added pragma once.
- 9/10/94 dgp changed struct function pointer fields to UniversalProcPtr fields.
- 6/8/95 dgp Make sure that the structs are 68k aligned so they'll conform to
- what ATM expects, even if the project is compiled with ppc alignment.
- */
-
- #pragma once
- #define _H_ATMInterface
- #ifndef __DEVICES__
- #include <Devices.h>
- #endif
- #ifndef __TYPES__
- #include <Types.h>
- #endif
-
- #if PRAGMA_ALIGN_SUPPORTED || __MWERKS__
- #pragma options align=mac68k
- #endif
-
- typedef struct
- {
- Fixed a, b, c, d, tx, ty;
- } FixedMatrix;
-
- #define ATMProcs3Version 3
-
- typedef struct
- {
- long version;
- #ifdef __powerc
- UniversalProcPtr fontAvailable,showText,xyshowText;
- #else
- short (*fontAvailable)(short family,
- short style);
- short (*showText)(char *text,
- short length, FixedMatrix *matrix);
- short (*xyshowText)(char *text,
- short length, FixedMatrix *matrix,
- Fixed *displacements);
- #endif
- } ATMProcs3;
-
- #if PRAGMA_ALIGN_SUPPORTED || __MWERKS__
- #pragma options align=reset
- #endif
-
- #define ATMProcsStatusCode 0
-
- /*
- initATM initializes ATMInterface, if not already initialized. Returns
- 1 if and only if ATM is available and
- the procsets are correctly initialized
- */
- short initATM(void);
-
- /*
- fontAvailableATM returns 1 if and
- only if ATM can image the specified
- family and style
- */
- short fontAvailableATM(short family,short style);
-
- /*
- showTextATM shows length characters
- starting at text transformed by
- the specified matrix
- Returns the number of characters not shown */
- /* Matrix maps one point character space to device space, */
- /* relative to current pen position */
- /* Matrix's tx and ty components are updated */
- short showTextATM(char *text,short length,FixedMatrix *matrix);
-
- /*
- Show length characters starting
- at text transformed by the specified
- matrix.
- Matrix maps one point character space
- to device space, relative to current pen position.
- Matrix's tx and ty components are updated.
- Character x and y widths are specified
- by displacements.
- Returns the number of characters not shown.
- */
- short xyshowTextATM(char *text, short length,
- FixedMatrix *matrix, Fixed *displacements);
-